In image processing, edge detection is often a necessary step in methods for object detection and recognition. For example, many current face detection methods include edge detection as part of their operation. Optimally, an edge detection method would accurately detect every edge in the image, and represent each edge in a line of single pixel width. These characteristics of an edge image improve the accuracy of later image processing steps. Traditional edge detection methods look for abrupt changes in intensity between adjacent or nearby pixels.
In actual operation, a number of difficulties arise when detecting edges within a variety of differing images. For example, some images may contain similar objects that overlap, such as two people wearing similar clothing. Often, images vary greatly in contrast and exposure creating difficult situations where edges are difficult to distinguish. Even within a single edge, within a single image, the color and intensity of the edge may vary due along the edge to the way light and shadow fall on different portions of the edge. All of these problems increase the difficulty of accurately detecting edges in a variety of common situations.
Overview
In an embodiment, a method executed by a computer system for detecting edges comprises receiving an image comprising a plurality of pixels, determining a phase congruency value for a pixel, where the phase congruency value comprises a plurality of phase congruency components, and determining if the phase congruency value satisfies a phase congruency criteria. If the phase congruency value satisfies the phase congruency criteria, the computer system categorizes the pixel as an edge pixel. If the phase congruency value does not satisfy the phase congruency criteria, the computer system compares a first phase congruency component of the plurality of phase congruency components to a phase congruency component criteria. If the first phase congruency component satisfies the phase congruency component criteria, the computer system categorizes the pixel as an edge pixel, and if the first phase congruency component does not satisfy the phase congruency component criteria, categorizes the pixel as a non-edge pixel.
The phase congruency value may comprise a ratio of the plurality of phase congruency components. The first phase congruency component may comprise a local energy of the pixel, while the second phase congruency component may comprise the sum of the amplitudes of the Fourier components of the image at the location of the pixel.
The phase congruency criteria may comprise a phase congruency threshold value, and the phase congruency value satisfies the phase congruency criteria when the phase congruency value exceeds the phase congruency threshold value.
The phase congruency component criteria may comprise a phase congruency component threshold value, and the phase congruency component satisfies the phase congruency component criteria when the phase congruency component exceeds the phase congruency component threshold value.
In some embodiments, the image is a digital image from a transit system, and at least some of the edge pixels and corner pixels define outlines of human heads.
In another embodiment, an image processing system for detecting edges comprises an interface configured to receive images, and a processor electrically coupled with the interface. The processor is configured to receive an image comprising a plurality of pixels through the interface, determine a phase congruency value for a pixel, where the phase congruency value comprises a plurality of phase congruency components, and determine if the phase congruency value satisfies a phase congruency criteria. If the phase congruency value satisfies the phase congruency criteria, the processor categorizes the pixel as an edge pixel. If the phase congruency value does not satisfy the phase congruency criteria, the processor compares a first phase congruency component of the plurality of phase congruency components to a phase congruency component criteria. If the first phase congruency component satisfies the phase congruency component criteria, the processor categorizes the pixel as an edge pixel, and if the first phase congruency component does not satisfy the phase congruency component criteria, categorizes the pixel as a non-edge pixel.
In a further embodiment, a computer-readable medium having instructions stored thereon for operating a computer system to detect edges is described. The instructions, when executed by the computer system, direct the computer system to receive an image comprising a plurality of pixels, determine a phase congruency value for a pixel, where the phase congruency value comprises a plurality of phase congruency components, and determine if the phase congruency value satisfies a phase congruency criteria. If the phase congruency value satisfies the phase congruency criteria, the computer system categorizes the pixel as an edge pixel. If the phase congruency value does not satisfy the phase congruency criteria, the computer system compares a first phase congruency component of the plurality of phase congruency components to a phase congruency component criteria. If the first phase congruency component satisfies the phase congruency component criteria, the computer system categorizes the pixel as an edge pixel, and if the first phase congruency component does not satisfy the phase congruency component criteria, categorizes the pixel as a non-edge pixel.